<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
			//练习一
		// 	function C1(name) {
		// 		//name---undefined
		// 	    if (name) {//false
		// 	        this.name = name;
		// 	    }
		// 	}
		// 	function C2(name) {
		// 		//name--undefined
		// 		//this.name=undefined;  私有属性
		// 	    this.name = name;
		// 	}
		// 	function C3(name) {
		// 		//name--undefined
		// 		//this.name=undeifned || 'join';
		// 		//this.name='join'; 私有属性
		// 	    this.name = name || 'join';
		// 	}
		// 	C1.prototype.name = 'Tom';
		// 	C2.prototype.name = 'Tom';
		// 	C3.prototype.name = 'Tom';
			
		// 	alert((new C1().name) + (new C2().name) + (new C3().name)); 
		//    //          'Tom'+ undefined + 'join'
			
			//练习2
			// function Fn(num) {
			//     this.x = this.y = num;
			// }
			// Fn.prototype = {
			//     x: 20,
			//     sum: function () {
			//         console.log(this.x + this.y);
			//     }
			// };
			// let f = new Fn(10);
			// console.log(f.sum === Fn.prototype.sum);
			// f.sum();
			// Fn.prototype.sum();
			// console.log(f.constructor);
			
			
			//练习3
			// function Fn() {
			//     let a = 1;
			//     this.a = a;
			// }
			// Fn.prototype.say = function () {
			//     this.a = 2;
			// }
			// Fn.prototype = new Fn;
			// let f1=new Fn;
			// Fn.prototype.b = function () {
			//     this.a = 3;
			// }
			// console.log(f1.a);
			// console.log(f1.prototype);
			// console.log(f1.b);
			// console.log(f1.hasOwnProperty('b'));
			// console.log('b' in f1);
			// console.log(f1.constructor == Fn);
			
			//练习4
			// function fun() {
			//     this.a = 0;
			//     this.b = function () {
			//         alert(this.a);
			//     }
			// }
			// fun.prototype = {
			//     b: function () {
			//         this.a = 20;
			//         alert(this.a);
			//     },
			//     c: function () {
			//         this.a = 30;
			//         alert(this.a)
			//     }
			// }
			// var my_fun = new fun();
			// my_fun.b();
			// my_fun.c();
			
			//练习5   补全代码
			let n = 10;
			Number.prototype.plus = function (num=0) { 
				//补全代码
			};
			Number.prototype.minus = function (num=0) {
				//补全代码
			};
	        
			let m = n.plus(10).minus(5);// 10+10-5=15
			console.log(m); //=>15
			
			
		
		   
		</script>
	</body>
</html>
